
package appvideo.logica;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Iterator;
import java.util.List;


public class Recargo {
    
    private Date fechaactual;
    private ProductoAlquilado pra;
    private List<ProductoAlquilado> lpra;

    public Recargo(ProductoAlquilado pra) {
        this.pra = pra;
    }

    public Recargo(List<ProductoAlquilado> lpra) {
        this.lpra = lpra;
    }
    public Recargo(){
        
    }
    
    public double compruebaRecargoIndividual(ProductoAlquilado pra){
        
        int dias=0;
        double recargo=0;
        //fechas para poder restar y sacar el numero de dias que se ha sobrepasado
        GregorianCalendar t1 = new GregorianCalendar();
        GregorianCalendar t2 = new GregorianCalendar();
        
        t1.setTime(pra.getfFin());
        //METER AKI EL RECARGO PARA QUE VALLA COMPROBANDO CADA PRODUCTO SI CONLLEVA RECARGO
        //con la fecha de hoy y la fecha fin saco el momento en el que se encutra el alquiler   
        dias=t2.get(Calendar.DAY_OF_YEAR) - t1.get(Calendar.DAY_OF_YEAR);
        //si devuelve mayor que cero es que ha pasado el margen de entrega y calculo el coste atraves de los dias que ha sobrepasado
        //el numero de peroductos y el precio del reargo
        if(dias>0){
            recargo=recargo+1*dias;
        }        
        return recargo;
    }
    
    public double compruebaRecargoColectivo(List<ProductoAlquilado> lpra){
                                            //me traigo la lista de los productos alquilados
        //variables
        int dias=0;
        double recargo=0;
        //fechas para poder restar y sacar el numero de dias que se ha sobrepasado
        GregorianCalendar t1 = new GregorianCalendar();
        GregorianCalendar t2 = new GregorianCalendar();
        //recorro la lista para coger la fechafin
        Iterator itp = lpra.iterator();
        while (itp.hasNext()) {
            ProductoAlquilado pr = (ProductoAlquilado) itp.next();
            t1.setTime(pr.getfFin());
            //METER AKI EL RECARGO PARA QUE VALLA COMPROBANDO CADA PRODUCTO SI CONLLEVA RECARGO
            //con la fecha de hoy y la fecha fin saco el momento en el que se encutra el alquiler   
            dias=t2.get(Calendar.DAY_OF_YEAR) - t1.get(Calendar.DAY_OF_YEAR);
            //si devuelve mayor que cero es que ha pasado el margen de entrega y calculo el coste atraves de los dias que ha sobrepasado
            //el numero de peroductos y el precio del reargo
            if(dias>0){
                recargo=recargo+1*dias;
            }
        }  
        //devuelvo el recargo
        return recargo;        
    }    
}
